"""时区工具函数."""

from __future__ import annotations

from datetime import datetime
from zoneinfo import ZoneInfo


def get_shanghai_timezone() -> ZoneInfo:
    """获取上海时区对象.

    Returns
    -------
    ZoneInfo
        上海时区（Asia/Shanghai）对象
    """
    return ZoneInfo("Asia/Shanghai")


def now_shanghai() -> datetime:
    """获取当前上海时区的 datetime 对象.

    Returns
    -------
    datetime
        当前上海时区的 datetime 对象
    """
    return datetime.now(get_shanghai_timezone())

